package com.jason.system.mapper;

import com.jason.system.entity.Fine;
import org.apache.ibatis.annotations.Param;

import java.util.Date;
import java.util.List;

/**
 * @author jie
 * @version 1.0
 * success come from self-discipline
 * @date 2021/4/24 17:01
 */
public interface FineMapper {

  /**
   * 获取所有奖惩信息
   * @return List<Fine>
   */
  List<Fine> getAllFine();

  /**
   * 根据时间段获取奖惩信息
   * @param startTime 开始时间
   * @param endTime 结束时间
   * @param sIds 学生id
   * @return List<Fine>
   */
  List<Fine> getAllFineByTime(@Param("sIds") Integer sIds, @Param("startTime") Date startTime,@Param("endTime") Date endTime);

  /**
   * 就直接通过学生id来查询
   * @param sIds 学生id
   * @return List<Fine>
   */
  List<Fine> getAllFineBysIds(@Param("sIds") Integer sIds);

  /**
   * 添加奖惩信息
   * @param fine 奖惩信息
   */
  void insertFine(@Param("fine") Fine fine);

  /**
   * 更新奖惩信息
   * @param fine 奖惩信息
   */
  void updateFine(@Param("fine") Fine fine);

  /**
   * 删除奖惩信息
   * @param fId 奖惩信息id
   */
  void deleteFine(@Param("fId") Integer fId);

  /**
   * 删除奖惩信息
   * @param fIds 奖惩信息ids,以String形式存在，以逗号分割
   */
  void deleteFines(@Param("fIds") List<Integer> fIds);
}
